Electron + puppeteer 开发爬虫 您所在的位置:网站首页 electron 多个 browserwindow Electron + puppeteer 开发爬虫

Electron + puppeteer 开发爬虫

2023-08-30 17:09| 来源: 网络整理| 查看: 265

Puppeteer 是什么?

image.png

puppeteer 是一个由 Google 开发的 Node.js 库,它提供了一组用于控制 Chrome 或 Chromium 浏览器的 API。通过 puppeteer,我们可以在浏览器环境中执行各种操作,例如生成 PDF、截屏、模拟用户行为、爬取数据等。由于 puppeteer 可以控制浏览器,因此它比传统的 Node.js 爬虫更加强大和灵活,也更容易实现一些复杂的功能。在 Electron 应用程序中使用 puppeteer 可以实现强大的爬虫功能,同时还可以将爬虫结果集成到应用程序中,为用户提供更丰富的功能和服务。

实现原理

在Nodejs中集成puppeteer直接参考官网的Demo就可以了,这里不再赘述,下面说一下在Electron中集成puppeteer。

在Electron中集成puppeteer需要用到puppeteer-in-electron这个库。它的原理是在electron.app上开启远程debug,具体代码app.commandLine.appendSwitch('remote-debugging-port', port) ,然后用PuppeteerNode.connect({browserWSEndpoint})方法连接上这个调试端口实现调试。

官方示例 // 官方的一小段例子 const {BrowserWindow, app} = require("electron"); const pie = require("puppeteer-in-electron") const puppeteer = require("puppeteer-core"); const main = async () => { await pie.initialize(app); const browser = await pie.connect(app, puppeteer); const window = new BrowserWindow(); const url = "https://example.com/"; await window.loadURL(url); const page = await pie.getPage(browser, window); console.log(page.url()); window.destroy(); }; main();


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有